cpuidle: Add decaying history logic to menu idle predictor
authorKeir Fraser <keir.fraser@citrix.com>
Wed, 25 Nov 2009 14:06:17 +0000 (14:06 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Wed, 25 Nov 2009 14:06:17 +0000 (14:06 +0000)
commit7d5eee4f2c1424142790c944c8e083d13a295a37
tree25a1c470a8706b26ca64748e9ad7cc30cf6bfc11
parent08a0b4ab0d193b8fbb9270b7ab26f527535ba69c
cpuidle: Add decaying history logic to menu idle predictor

this patch is ported from linux upstream git commit
816bb611e41be29b476dc16f6297eb551bf4d747

the original description is:
"
Add decaying history of predicted idle time, instead of using the last
early wakeup. This logic helps menu governor do better job of
predicting idle time.

With this change, we also measured noticable (~8%) power savings on a
DP server system with CPUs supporting deep C states, when system was
lightly loaded. There was no change to power or perf on other load
conditions.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>
"

In Xen environment, we also observe this patch reduce the idle power
fluctuation.  In one DP server, when system is purely idle, the watts
stdev/average reduce from 6% to 2%. it is helpful for idle power
measurement accuracy.  There is no performance and power change when
system is loaded.

Signed-off-by: Yu Ke <ke.yu@intel.com>
xen/arch/x86/acpi/cpuidle_menu.c